Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Modify AdvancedTreeSearch for CtcTreeBuilder support #102

Open
wants to merge 34 commits into
base: master
Choose a base branch
from

Conversation

larissakl
Copy link
Contributor

Just minor adjustments to make the AdvancedTreeSearch work with the CtcTreeBuilder:

  • Modified two if-statements related to the stateDepths which caused segmentation faults due to the self-loops in the CTC tree.

  • Two assertions didn’t apply to the CTC tree, as its root state logic is significantly simpler. These assertions are now only checked if the CtcTreeBuilder is not used, so the previous behavior remains unchanged.

@larissakl larissakl requested review from curufinwe and SimBe195 and removed request for curufinwe March 1, 2025 16:34
# Conflicts:
#	src/Search/AdvancedTreeSearch/AcousticLookAhead.hh
#	src/Search/AdvancedTreeSearch/LanguageModelLookahead.hh
#	src/Search/AdvancedTreeSearch/LinearPrediction.hh
#	src/Search/AdvancedTreeSearch/SearchSpace.cc
#	src/Search/AdvancedTreeSearch/SearchSpace.hh
#	src/Search/Module.cc
#	src/Search/Module.hh
#	src/Search/PersistentStateTree.cc
#	src/Search/TreeBuilder.cc
#	src/Search/TreeBuilder.hh
#	src/Search/TreeStructure.hh
@larissakl larissakl changed the base branch from master to treebuilder-rna-topology March 20, 2025 15:25
@larissakl
Copy link
Contributor Author

The AdvancedTreeSearch can be used with the CtcTreeBuilder and RnaTreeBuilder in two ways:

  1. Enable loops (default setting) and set the TDP for loop to infinity
  2. Disable loops (set allow-label-loop and allow-blank-loop to no) and set the TDP for loop to some value, e.g. 0.0

For both configurations, the TDP for skip has to be set to infinity.
Until now, the LM lookahead can only be used with option 2, with option 1 it will result in a segmentation fault.
Additionally, when label loops are disabled, the tree includes skip-transitions between identical labels, which are not allowed in the CTC-topology. This issue must be handled in the search code. I added a TODO in AdvancedTreeSearch for this.

Base automatically changed from treebuilder-rna-topology to master March 21, 2025 09:55
@larissakl
Copy link
Contributor Author

Maybe you have a better idea for naming the config parameter "force-blank-between-identical-labels"...

@larissakl larissakl requested a review from curufinwe March 24, 2025 10:16
@curufinwe curufinwe changed the title Adjust AdvancedTreeSearch for CtcTreeBuilder support Modify AdvancedTreeSearch for CtcTreeBuilder support Mar 25, 2025
@curufinwe
Copy link
Contributor

@Stefanwuu Once you can confirm that these changes work for you too we can merge. I'll set my review to request changes for this purpose only for now.

Copy link
Contributor

@curufinwe curufinwe left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Waiting for confirmation that these changes are sufficient to run CTC decoding.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants